/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package models;

import java.text.SimpleDateFormat;
import java.util.Date;
import javax.persistence.Entity;
import play.data.validation.Required;
import play.db.jpa.Model;


/**
 *
 * @author Administrador
 */
@Entity
public class SemestreAcademico extends Model {
    @Required
    public Date sem_datFechaInicio;
    @Required
    public Date sem_datFechaFin;
    @Required
    public String sem_vcNombre;
    
    
    public SemestreAcademico() {
        sem_datFechaInicio = new Date();
        sem_datFechaFin = new Date();
        sem_vcNombre = "";
    }
    
    
    public String getInicio(){
        SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");
        return formato.format(sem_datFechaInicio);
    }
    
    public String getFin(){
        SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");
        return formato.format(sem_datFechaFin);
    }
	
	    public void setSem_vcNombre(String sem_vcNombre) {
        this.sem_vcNombre = sem_vcNombre;
    }    
    
    public boolean bSonFechasValidas(){
        return bEsFechaMenor(sem_datFechaInicio, sem_datFechaFin);
    }
    
    /**
     * 
     * @param fechaInicio Fecha inicial del ciclo
     * @param fechaFin    Fecha final del ciclo
     * @return  true si es menor, false en otro caso    
     */
    public boolean bEsFechaMenor(Date dFechaInicio, Date dFechaFin){
        if(dFechaInicio.compareTo(dFechaFin)<0)
            return true;
        
        return false;
    }
    
    /**
     * 
     * @param dFecha fecha que se evalúa
     * @return true su la fecha 
     */
    public boolean bEsMayorQueFechaActual(Date dFecha){
        Date dFechaActual = new Date();
        
        if(dFecha.compareTo(dFechaActual)>0)
            return true;
        
        return false;
    }
    
    
}
